import axios from 'axios';
import { Message } from 'element-ui'; // 假设你使用了Element UI作为UI库
import store from '../src/vuex/store'; // 假设你使用了Vuex作为状态管理

// 创建axios实例
const service = axios.create({
  baseURL: '/api', // url = base url + request url
  timeout: 5000 // 请求超时时间
});

// 请求拦截器
service.interceptors.request.use(
  config => {
    // 发起请求之前做些什么，比如设置token到headers
    config.headers.Authorization = this.$cookies.get("token")
    return config;
  },
  error => {
    // 请求错误
    return Promise.reject(error);
  }
);

// 响应拦截器
// service.interceptors.response.use(
//   response => {
//     // 对响应数据做点什么，比如根据状态码判断登录状态
//     const res = response.data;
//     if (res.code !== 200) {
//       Message({
//         message: res.message || 'Error',
//         type: 'error',
//         duration: 5 * 1000
//       });
//       // 如果是未授权，清除token信息并跳转到登录页面
//       if (res.code === 401) {
//         // 清除token
//         localStorage.removeItem('user-token');
//         // 跳转登录页
//         store.commit('setLoginStatus', false);
//         router.push('/login');
//       }
//       return Promise.reject(new Error(res.message || 'Error'));
//     } else {
//       return res;
//     }
//   },
//   error => {
//     // 对响应错误做点什么
//     Message({
//       message: error.message,
//       type: 'error',
//       duration: 5 * 1000
//     });
//     return Promise.reject(error);
//   }
// );

export default service;
